package com.cyou.qb.common.dao;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.springframework.stereotype.Component;

import com.cyou.qb.common.domain.Award;
import com.cyou.qb.common.domain.FrontAward;

/**
 * @author zoudongchao
 *
 */
@Component
public class AwardDao extends MysqlBaseDao {
	public Award findAwardById(Integer id) {
		return this.getUniqueOne("findAwardById", id);
	}

	/**
	 * <b>依照中奖尾数降序排列<b/>
	 * @author zoudongchao
	 * @param activeId
	 * @return
	 */
	public List<Award> findAwardsByActiveId(int activeId) {
		return this.getListByEntity("findAwardsByActiveId", activeId);
	}
	
	//	/**
	//	 * Description 根据活动id获取活动中已经完成奖品添加、入库、摇奖盘配置、中奖方式配置的 奖品个数
	//	 * @author lidongwei
	//	 * @since 2012-10-17
	//	 */
	//	public int findFinishAwardCount(Integer id) {
	//		
	//		return 0;
	//	}
		
		public List<FrontAward> findAwardList(){
			
			return this.getList("findAwardList");
			
		}

	//	/**
		//	 * Description 根据活动id获取活动中已经完成奖品添加、入库、摇奖盘配置、中奖方式配置的 奖品个数
		//	 * @author lidongwei
		//	 * @since 2012-10-17
		//	 */
		//	public int findFinishAwardCount(Integer id) {
		//		
		//		return 0;
		//	}
			
			/** 
			 * Description 根据尾数和 活动id获取奖品数量，用来判断是否可以进行添加尾数
			 * @author lidongwei
			 * @param integer 
			 * @since 2012-10-23
			 */
			public int findAwardCountByNumInput(Integer number, Integer activeId, Integer awardId) {
				Map<String,Integer> map = new HashMap<String,Integer>();
				map.put("num_win", number);
				map.put("active_id", activeId);
				map.put("id", awardId);
				return this.getCount("findAwardCountByNumInput", map);
				
			}

	public int updateOneAward(Award award){
				return this.update("updateOneAward", award);
			}

	public int updateAwardCurrNum(Award award){
		return this.update("updateAwardCurrNum", award);
	}

	/**
	 * Description 添加一个活动
	 * @author lidongwei
	 * @since 2012-10-9
	 */
	public int saveOneAward(Award award) {
		 return this.insert("insertOneAward", award);
		
	}

//	/**
//	 * Description 根据活动id获取活动中已经完成奖品添加、入库、摇奖盘配置、中奖方式配置的 奖品个数
//	 * @author lidongwei
//	 * @since 2012-10-17
//	 */
//	public int findFinishAwardCount(Integer id) {
//		
//		return 0;
//	}


}
